package 链表;

/**
 * https://leetcode-cn.com/problems/remove-linked-list-elements/
 * @author 会玩的洋洋
 *
 */

public class _203_移除链表元素 {
    /**
     * 遍历链表数据，进行一一对比，如果相等，则将前一个节点指向于当前节点的下一个，再将当前指针指向下一个节点。
     * @param head
     * @param val
     * @return
     */
    public ListNode removeElements(ListNode head, int val) {
        ListNode node = new ListNode(0);
        node.next = head;
        ListNode prev = node , curr = head;
        while(curr != null){
            if(curr.val == val) {
                prev.next = curr.next;
            } else {
                prev = curr;
            }
            curr = curr.next;
        }
        return node.next;
    }
}
